using System.Collections.Generic;
using System.Threading.Tasks;

namespace Betfair.Api
{
    public interface IBetfairProxy
    {
        Task<Response> Login(string username, string password, string applicationKey, string certificatePath, string certificatePassword);
        Task<Response<KeepAlive>> KeepAlive();
        Task<Response<IList<EventType>>> GetEventTypes(int id, Params parameters);
        Task<Response<IList<Competition>>> GetCompetions(int id, Params parameters);
        Task<Response<IList<Country>>> GetCountries(int id, Params parameters);
        Task<Response<IList<Event>>> GetEvents(int id, Params parameters);
        Task<Response<IList<MarketType>>> GetMarketTypes(int id, Params parameters);
        Task<Response<IList<MarketCatalogue>>> GetMarkets(int id, Params parameters);
        Task<Response<IList<MarketBook>>> GetMarketBook(int id, Params parameters);
    }
}